package com.newsee.remote.common.database.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * <p>
 *
 * </p>
 *
 * @author liangzhichen
 * @since 2019-08-21
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("SH_Material")
public class ShMaterial extends Model<ShMaterial> {

    private static final long serialVersionUID = 1L;

    @TableId(value = "ID", type = IdType.AUTO)
    private Long id;

    @TableField("MaterialCode")
    private String MaterialCode;

    @TableField("MaterialName")
    private String MaterialName;

    @TableField("MaterialClassID")
    private Long MaterialClassID;

    @TableField("Spec")
    private String Spec;

    @TableField("Unit")
    private String Unit;

    @TableField("CostArithmetic")
    private String CostArithmetic;

    @TableField("RefPrice")
    private BigDecimal RefPrice;

    @TableField("CreateUserID")
    private Long CreateUserID;

    @TableField("CreateDate")
    private LocalDateTime CreateDate;

    @TableField("UpdateUserID")
    private Long UpdateUserID;

    @TableField("UpdateDate")
    private LocalDateTime UpdateDate;

    @TableField("Remark")
    private String Remark;

    @TableField("AmountLow")
    private Double AmountLow;

    @TableField("MaterialType")
    private Integer MaterialType;

    @TableField("MaterialBarCode")
    private String MaterialBarCode;

    @TableField("FileID")
    private Long FileID;

    @TableField("Brand")
    private String Brand;

    @TableField("Package")
    private BigDecimal Package;

    @TableField("MinOrder")
    private BigDecimal MinOrder;

    @TableField("AmountHigh")
    private Double AmountHigh;

    @TableField("IsDisable")
    private Integer IsDisable;

    @TableField("IsUserd")
    private Integer IsUserd;

    private Integer ischeck;

    @TableField("MaterialCategory")
    private Integer MaterialCategory;

    @TableField("FileURL")
    private String FileURL;

    @TableField("SupplierFlag")
    private Integer SupplierFlag;

    @TableField("OtherMaterialCode")
    private String OtherMaterialCode;


    @Override
    protected Serializable pkVal() {
        return this.id;
    }

}
